package org.example.azapi;
import org.example.azapi.constants.AzDataTypeIdYearMonthDuration;

/**
 * AzAttributeValueDayTimeDuration contains AzDataDayTimeDuration
 * object that may be used to generate the XACML 
 * #dayTimeDuration DataType.
 * @author Rich
 */
public interface AzAttributeValueYearMonthDuration 
		extends AzAttributeValue<AzDataTypeIdYearMonthDuration, AzDataYearMonthDuration> {
	
	/**
	 * Set the value of this AzAttributeValueYearMonthDuration object
	 * with an AzDataYearMonthDuration object that can generate the 
	 * string that can be used for the value of a XACML 
	 * #yearMonthDuration DataType.
	 * 
	 * @param azYearMonthDuration that can be used to generate XACML 
	 * #yearMonthDuration DataType
	 */
	public void setValue(AzDataYearMonthDuration azYearMonthDuration);
	
	/**
	 * Return the AzDataYearMonthDuration object that is used by this 
	 * AzAttributeValueYearMonthDuration object to represent the 
	 * XACML #yearMonthDuration DataType  
	 * 
	 * @return  an azDataYearMonthDuration object that corresponds to 
	 * the XACML #dayTimeDuration DataType
	 */
	public AzDataYearMonthDuration getValue();
	
	/**
	 * Return the Java String that can be used as the XACML 
	 * #yearMonthDuration DataType representation of the 
	 * AzDataYearMonthDuration object contained in
	 * this AzAttributeValueYearMonthDuration object.
	 * 
	 * @return	a string that can be used as XACML #yearMonthDuration 
	 * DataType content
	 * 
	 */
	public String toXacmlString();
}
